# milan, verze a

coordinates([x,y],[u],12):
dependence(F(u,u_x,u_y));
equation('u_xy = F');

with(linalg):

A := matrix(2,2, [a1, a2, a2, -a1]);
B := matrix(2,2, [b1, b2 + b3, b2 - b3, -b1]); 
R := matrix(2,2, [r, 0, 0, -r]);
nonzero(a2, b2 + b3, b3, r, F, b3 - b2); 

SM := zero_curvature(x = A, y = B, 1 = R):
SM1 := map(expand, SM[1]):
SM2 := map(expand, SM[2]):
S1 := SM1[1,1]: S2 := SM1[1,2]: S3 := SM1[2,1]:
S4 := SM2[1,1]: S5 := SM2[1,2]: S6 := SM2[2,1]:
S := S1,S2,S3,S4,S5,S6: 

dependence(
  a1(u,u_x,u_y),
  a2(u,u_x,u_y),
  b1(u,u_x,u_y),
  b2(u,u_x,u_y),
  b3(u,u_x,u_y),
  r(u,u_x,u_y)); 
unknowns(a2,a1,b3,b2,b1,r,F); 

interface(labelling=false);
Varordering(degree, reverse, function);
maxsize := 100;
